﻿using AutoMapper;
using Hotel.Domain;
using Hotel.IServices.RequestDTO;
using Hotel.IServices.ResponseDTO;

namespace Hotel.Api
{
    /// <summary>
    /// Automapper的配置文件
    /// </summary>
    public class MappingProfiles : Profile
    {
        /// <summary>
        /// 构造函数
        /// </summary>
        public MappingProfiles()
        {
            //todo add mapping relationship
            CreateMap<InsertDatasRequestDTO, HotelTest>();
            CreateMap<UpdateDatasRequestDTO, HotelTest>();
            CreateMap<HotelTest, IServices.ResponseDTO.GetDataResponseDTO>();




            //添加商品
            CreateMap<Googds, AddGoodsAsyncReDto>().ReverseMap();
        
            //显示商品信息
            CreateMap<Googds, QueryGoodsListPagedAsyncRespDto>().ReverseMap();

            //修改商品信息
            CreateMap<Googds, GetUpGoodsReDto>().ReverseMap();


            //添加用户
            CreateMap<User, AddUserAsyncDto>().ReverseMap();
            //显示用户信息
            CreateMap<User, GetUserResDto>().ReverseMap();
            CreateMap<User, GetUpUserResDto>().ReverseMap();
            CreateMap<User, UpDateUserInfoRegisterAsyncReqDto>().ReverseMap();
            //根据用户编号查询用户角色信息
            CreateMap<User, GetUserInfoAsyncReqDto>().ReverseMap();

            //角色
            CreateMap<RoleInfo, AddRoleAsyncReqDto>().ReverseMap();

            
            //添加商品类型
            CreateMap<GoogdsType, AddGoodsTypeDto>().ReverseMap();
            CreateMap<User, RegisterAsyncReqDto>().ReverseMap();
            CreateMap<RoleInfo, ShowRoleAsyncReqDto>().ReverseMap();


            CreateMap<RoleInfo, TreeReqDto>().ReverseMap();

            
            CreateMap<User, ShowUserAsyncReqDto>().ReverseMap();


            CreateMap<Permission, GetMenuListYserIdAsyncReqDto>().ReverseMap();

            


        }
    }
}
